GSK is part of the 4.0 development cycle.
* The actual implementation of each filter is deferred to the
* rendering pipeline.
*
- * Since: 3.22
+ * Since: 3.90
*/
typedef enum {
GSK_SCALING_FILTER_LINEAR,
* The implementation of each blend mode is deferred to the
* rendering pipeline.
*
- * Since: 3.22
+ * Since: 3.90
*/
typedef enum {
GSK_BLEND_MODE_DEFAULT = 0,
*
* The visible area used by the #GskRenderer to render its contents.
*
- * Since: 3.22
+ * Since: 3.90
*/
gsk_renderer_properties[PROP_VIEWPORT] =
g_param_spec_boxed ("viewport",
*
* The #GdkDisplay used by the #GskRenderer.
*
- * Since: 3.22
+ * Since: 3.90
*/
gsk_renderer_properties[PROP_DISPLAY] =
g_param_spec_object ("display",
*
* The scale factor used when rendering.
*
- * Since: 3.22
+ * Since: 3.90
*/
gsk_renderer_properties[PROP_SCALE_FACTOR] =
g_param_spec_int ("scale-factor",
*
* The drawing context used when rendering.
*
- * Since: 3.22
+ * Since: 3.90
*/
gsk_renderer_properties[PROP_DRAWING_CONTEXT] =
g_param_spec_object ("drawing-context",
* Sets the visible rectangle to be used as the viewport for
* the rendering.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_renderer_set_viewport (GskRenderer *renderer,
*
* Retrieves the viewport of the #GskRenderer.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_renderer_get_viewport (GskRenderer *renderer,
*
* Sets the scale factor for the renderer.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_renderer_set_scale_factor (GskRenderer *renderer,
*
* Returns: the scale factor
*
- * Since: 3.22
+ * Since: 3.90
*/
int
gsk_renderer_get_scale_factor (GskRenderer *renderer)
*
* Sets the window on which the @renderer is rendering.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_renderer_set_window (GskRenderer *renderer,
*
* Returns: (transfer none) (nullable): a #GdkWindow
*
- * Since: 3.22
+ * Since: 3.90
*/
GdkWindow *
gsk_renderer_get_window (GskRenderer *renderer)
*
* Returns: (transfer none): a #GdkDisplay
*
- * Since: 3.22
+ * Since: 3.90
*/
GdkDisplay *
gsk_renderer_get_display (GskRenderer *renderer)
*
* Returns: %TRUE if the #GskRenderer was realized, and %FALSE otherwise
*
- * Since: 3.22
+ * Since: 3.90
*/
gboolean
gsk_renderer_is_realized (GskRenderer *renderer)
* Creates the resources needed by the @renderer to render the scene
* graph.
*
- * Since: 3.22
+ * Since: 3.90
*/
gboolean
gsk_renderer_realize (GskRenderer *renderer)
*
* Releases all the resources created by gsk_renderer_realize().
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_renderer_unrealize (GskRenderer *renderer)
* The @renderer will acquire a reference on the #GskRenderNode tree while
* the rendering is in progress, and will make the tree immutable.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_renderer_render (GskRenderer *renderer,
*
* Returns: (transfer full): the new #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_renderer_create_render_node (GskRenderer *renderer)
*
* Returns: (transfer full) (nullable): a #GskRenderer
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderer *
gsk_renderer_get_for_display (GdkDisplay *display)
*
* Returns: (transfer full): a newly created fallback #GskRenderer instance
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderer *
gsk_renderer_create_fallback (GskRenderer *renderer,
typedef struct _GskRenderer GskRenderer;
typedef struct _GskRendererClass GskRendererClass;
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GType gsk_renderer_get_type (void) G_GNUC_CONST;
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderer * gsk_renderer_get_for_display (GdkDisplay *display);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_renderer_set_viewport (GskRenderer *renderer,
const graphene_rect_t *viewport);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_renderer_get_viewport (GskRenderer *renderer,
graphene_rect_t *viewport);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_renderer_set_scale_factor (GskRenderer *renderer,
int scale_factor);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
int gsk_renderer_get_scale_factor (GskRenderer *renderer);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_renderer_set_window (GskRenderer *renderer,
GdkWindow *window);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GdkWindow * gsk_renderer_get_window (GskRenderer *renderer);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GdkDisplay * gsk_renderer_get_display (GskRenderer *renderer);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
gboolean gsk_renderer_realize (GskRenderer *renderer);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_renderer_unrealize (GskRenderer *renderer);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_renderer_create_render_node (GskRenderer *renderer);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderer * gsk_renderer_create_fallback (GskRenderer *renderer,
const graphene_rect_t *viewport,
cairo_t *cr);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_renderer_render (GskRenderer *renderer,
GskRenderNode *root,
GdkDrawingContext *context);
*
* The `GskRenderNode` structure contains only private data.
*
- * Since: 3.22
+ * Since: 3.90
*/
static void
*
* Returns: (transfer none): the #GskRenderNode with an additional reference
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_render_node_ref (GskRenderNode *node)
* If the reference was the last, the resources associated to the @node are
* freed.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_unref (GskRenderNode *node)
*
* Returns: (transfer none): the parent of the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_render_node_get_parent (GskRenderNode *node)
*
* Returns: (transfer none): the first child of the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_render_node_get_first_child (GskRenderNode *node)
*
* Returns: (transfer none): the last child of the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_render_node_get_last_child (GskRenderNode *node)
*
* Returns: (transfer none): the next sibling of the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_render_node_get_next_sibling (GskRenderNode *node)
*
* Returns: (transfer none): the previous sibling of the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_render_node_get_previous_sibling (GskRenderNode *node)
*
* Returns: (transfer none): the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_render_node_append_child (GskRenderNode *node,
*
* Returns: (transfer none): the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_render_node_prepend_child (GskRenderNode *node,
*
* Returns: (transfer none): the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_render_node_insert_child_at_pos (GskRenderNode *node,
*
* Returns: (transfer none): the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_render_node_insert_child_before (GskRenderNode *node,
*
* Returns: (transfer none): the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_render_node_insert_child_after (GskRenderNode *node,
*
* Returns: (transfer none): the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_render_node_replace_child (GskRenderNode *node,
*
* Returns: (transfer none): the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_render_node_remove_all_children (GskRenderNode *node)
*
* Returns: the number of children of the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
guint
gsk_render_node_get_n_children (GskRenderNode *node)
* render node, and are used to clip the surface associated to it
* when rendering.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_set_bounds (GskRenderNode *node,
*
* Retrieves the boundaries set using gsk_render_node_set_bounds().
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_get_bounds (GskRenderNode *node,
*
* Sets the transformation matrix used when rendering the @node.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_set_transform (GskRenderNode *node,
*
* Set the anchor point used when rendering the @node.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_set_anchor_point (GskRenderNode *node,
*
* Sets the opacity of the @node.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_set_opacity (GskRenderNode *node,
*
* Returns: the opacity of the #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
double
gsk_render_node_get_opacity (GskRenderNode *node)
*
* Hidden nodes, and their descendants, are not rendered.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_set_hidden (GskRenderNode *node,
*
* Returns: %TRUE if the #GskRenderNode is hidden
*
- * Since: 3.22
+ * Since: 3.90
*/
gboolean
gsk_render_node_is_hidden (GskRenderNode *node)
*
* Renderers may use this information to optimize the rendering pipeline.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_set_opaque (GskRenderNode *node,
*
* Returns: %TRUE if the #GskRenderNode is fully opaque
*
- * Since: 3.22
+ * Since: 3.90
*/
gboolean
gsk_render_node_is_opaque (GskRenderNode *node)
* Returns: %TRUE if the #GskRenderNode contains the given
* descendant
*
- * Since: 3.22
+ * Since: 3.90
*/
gboolean
gsk_render_node_contains (GskRenderNode *node,
*
* Associates a @texture_id to a #GskRenderNode.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_set_texture (GskRenderNode *node,
*
* A name is generally useful for debugging purposes.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_set_name (GskRenderNode *node,
*
* The default value is %GSK_BLEND_MODE_DEFAULT.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_set_blend_mode (GskRenderNode *node,
* Returns: (transfer full): a Cairo context used for drawing; use
* cairo_destroy() when done drawing
*
- * Since: 3.22
+ * Since: 3.90
*/
cairo_t *
gsk_render_node_get_draw_context (GskRenderNode *node)
*
* This function acquires a reference on @node.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_value_set_render_node (GValue *value,
*
* Sets the @node into the @value, without taking a reference to it.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_value_take_render_node (GValue *value,
*
* Returns: (transfer none) (nullable): a #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_value_get_render_node (const GValue *value)
*
* Returns: (transfer none) (nullable): a #GskRenderNode
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNode *
gsk_value_dup_render_node (const GValue *value)
typedef struct _GskRenderNode GskRenderNode;
typedef struct _GskRenderNodeClass GskRenderNodeClass;
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GType gsk_render_node_get_type (void) G_GNUC_CONST;
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_ref (GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_unref (GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_get_parent (GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_get_first_child (GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_get_last_child (GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_get_next_sibling (GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_get_previous_sibling (GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_append_child (GskRenderNode *node,
GskRenderNode *child);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_prepend_child (GskRenderNode *node,
GskRenderNode *child);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_insert_child_at_pos (GskRenderNode *node,
GskRenderNode *child,
int index_);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_insert_child_before (GskRenderNode *node,
GskRenderNode *child,
GskRenderNode *sibling);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_insert_child_after (GskRenderNode *node,
GskRenderNode *child,
GskRenderNode *sibling);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_remove_child (GskRenderNode *node,
GskRenderNode *child);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_replace_child (GskRenderNode *node,
GskRenderNode *new_child,
GskRenderNode *old_child);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_render_node_remove_all_children (GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
guint gsk_render_node_get_n_children (GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
gboolean gsk_render_node_contains (GskRenderNode *node,
GskRenderNode *descendant);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_set_bounds (GskRenderNode *node,
const graphene_rect_t *bounds);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_set_transform (GskRenderNode *node,
const graphene_matrix_t *transform);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_set_anchor_point (GskRenderNode *node,
const graphene_point3d_t *offset);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_set_opacity (GskRenderNode *node,
double opacity);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_set_hidden (GskRenderNode *node,
gboolean hidden);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
gboolean gsk_render_node_is_hidden (GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_set_opaque (GskRenderNode *node,
gboolean opaque);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
gboolean gsk_render_node_is_opaque (GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
cairo_t * gsk_render_node_get_draw_context (GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_set_blend_mode (GskRenderNode *node,
GskBlendMode blend_mode);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_set_texture (GskRenderNode *node,
int texture_id);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_set_scaling_filter (GskRenderNode *node,
GskScalingFilter min_filter,
GskScalingFilter mag_filter);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_set_name (GskRenderNode *node,
const char *name);
#define GSK_VALUE_HOLDS_RENDER_NODE(value) (G_VALUE_HOLDS (value, GSK_TYPE_RENDER_NODE))
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_value_set_render_node (GValue *value,
GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_value_take_render_node (GValue *value,
GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_value_get_render_node (const GValue *value);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNode * gsk_value_dup_render_node (const GValue *value);
G_END_DECLS
*
* Returns: (transfer full): the newly allocated #GskRenderNodeIter
*
- * Since: 3.22
+ * Since: 3.90
*/
GskRenderNodeIter *
gsk_render_node_iter_new (void)
*
* Frees the resources allocated by gsk_render_node_iter_new().
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_iter_free (GskRenderNodeIter *iter)
* It's safe to call this function multiple times on the same
* #GskRenderNodeIter instance.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_iter_init (GskRenderNodeIter *iter,
*
* Returns: %TRUE if the iterator is still valid.
*
- * Since: 3.22
+ * Since: 3.90
*/
gboolean
gsk_render_node_iter_is_valid (GskRenderNodeIter *iter)
*
* Returns: %TRUE if the iterator could advance, and %FALSE otherwise
*
- * Since: 3.22
+ * Since: 3.90
*/
gboolean
gsk_render_node_iter_next (GskRenderNodeIter *iter,
*
* Returns: %TRUE if the iterator could advance, and %FALSE otherwise
*
- * Since: 3.22
+ * Since: 3.90
*/
gboolean
gsk_render_node_iter_prev (GskRenderNodeIter *iter,
* Calling this function on an invalid #GskRenderNodeIter results
* in undefined behavior.
*
- * Since: 3.22
+ * Since: 3.90
*/
void
gsk_render_node_iter_remove (GskRenderNodeIter *iter)
gpointer dummy5;
};
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GType gsk_render_node_iter_get_type (void) G_GNUC_CONST;
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
GskRenderNodeIter * gsk_render_node_iter_new (void);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_iter_free (GskRenderNodeIter *iter);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_iter_init (GskRenderNodeIter *iter,
GskRenderNode *node);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
gboolean gsk_render_node_iter_is_valid (GskRenderNodeIter *iter);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
gboolean gsk_render_node_iter_prev (GskRenderNodeIter *iter,
GskRenderNode **child);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
gboolean gsk_render_node_iter_next (GskRenderNodeIter *iter,
GskRenderNode **child);
-GDK_AVAILABLE_IN_3_22
+GDK_AVAILABLE_IN_3_90
void gsk_render_node_iter_remove (GskRenderNodeIter *iter);
G_END_DECLS